package centralehotelweb.bean;

import centralehotel.metier.backoffice.IdentificationMetierLocal;
import centralehotel.exception.IdentificationFailedException;
import centralehotel.modele.GestionnaireHotel;
import com.sun.mail.iap.Response;
import java.io.IOException;
import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.application.FacesMessage.Severity;
import javax.faces.context.FacesContext;
import javax.servlet.jsp.PageContext;


/**
 *
 * @author Mathieu
 */
public class LoginBean extends AbstractBean {

    @EJB
    private IdentificationMetierLocal identificationMetier;
    private GestionnaireHotel gestionnaire;

    public GestionnaireHotel getGestionnaire() {
        if (gestionnaire == null) {
            gestionnaire = new GestionnaireHotel();
        }
        return gestionnaire;
    }

    public void setGestionnaire(GestionnaireHotel gestionnaire) {
        this.gestionnaire = gestionnaire;
    }

    public String login() throws IOException {
        try {
            setGestionnaire(identificationMetier.loginGestionnaire(getGestionnaire().getEmail(), getGestionnaire().getPassword()));
            System.out.println("LOGIN OK ------");
            //FacesContext.getCurrentInstance().getExternalContext().dispatch("/TdbGestionnaire.jsp");
            return "loginOk";
            
        } catch (IdentificationFailedException ex) {
            System.out.println("LOGIN FAILED------");
            addMessage(FacesMessage.SEVERITY_ERROR, "Identification échoué !");
            return "loginFailed";
        }
    }

    public boolean isLogged(){
        return (gestionnaire!=null && gestionnaire.getIdGestionnaireHotel()!=null);
    }
   
}
